home *** CD-ROM | disk | FTP | other *** search
/ Ahoy 1984 January to June / Ahoy_Magazine_84-Jan-Jun_1984_Double_L.d64 / sequential file (.txt) < prev    next >
Commodore BASIC  |  2022-10-26  |  1KB  |  52 lines

  1. 5 rem--ahoy!--jan issue--sequential files--prog page 67
  2. 10 clr:dimn$(100),p$(100):printchr$(147)
  3. 20 print"    phone book sequential file demo"
  4. 100 print:print:print"start new file (y/n)? ";
  5. 110 geta$:ifa$<>"y"anda$<>"n"then110
  6. 120 ifa$="n"thenprint"no":goto200
  7. 130 print"yes":open2,8,2,"@0:phones,s,w"
  8. 140 print#2,"0":close2
  9. 200 open2,8,2,"phones,s,r":input#2,n
  10. 210 forx=1ton:input#2,n$(x),p$(x):next
  11. 220 close2
  12. 230 print"[147]";n;" entries exist in file"
  13. 300 print:print"1- add entries"
  14. 310 print"2- delete entries"
  15. 320 print"3- display list"
  16. 330 print"4- search for name"
  17. 340 print"5- exit program"
  18. 350 print:print"enter choice: ";
  19. 360 geta$:a=val(a$):ifa<1ora>5then360
  20. 370 ifa=1then400
  21. 375 ifa=2then450
  22. 380 ifa=3then500
  23. 385 ifa=4then550
  24. 390 ifa=5then600
  25. 400 printchr$(147);"enter name, phone number:":n$="":p$="":inputn$,p$
  26. 410 ifn$=""then230
  27. 420 n=n+1:n$(n)=n$:p$(n)=p$:goto230
  28. 450 printchr$(147);"enter name,to delete:":n$="":inputn$:ifn$=""then230
  29. 460 f=0:forx=1ton:ifn$=n$(x)thenf=x
  30. 470 next:iff<>0then480
  31. 472 print"not found.  hit a key."
  32. 475 geta$:ifa$=""then475
  33. 477 goto230
  34. 480 n=n-1:forx=fton:n$(x)=n$(x+1):p$(x)=p$(x+1):next
  35. 490 goto230
  36. 500 printchr$(147)
  37. 510 forx=1ton:printn$(x),p$(x):next:print:print"all done.  hit a key."
  38. 520 geta$:ifa$=""then520
  39. 530 goto230
  40. 550 printchr$(147);"enter name to search for:":n$="":inputn$:ifn$=""then230
  41. 560 f=0:forx=1ton:ifn$=n$(x)thenf=x
  42. 565 next
  43. 570 iff<>0then580
  44. 575 print"not found.  hit a key."
  45. 577 geta$:ifa$=""then577
  46. 578 goto230
  47. 580 printn$(f),p$(f):print:print"hit a key."
  48. 585 geta$:ifa$=""then585
  49. 590 goto230
  50. 600 open2,8,2,"@0:phones,s,w":print#2,n
  51. 610 forx=1ton:print#2,n$(x):print#2,p$(x):next:close2
  52.